home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / The World of Computer Software.iso / em-xmkit.zip / EMM29_A.ASM < prev    next >
Assembly Source File  |  1989-11-29  |  3KB  |  73 lines

  1. ;-----------------------------------------------------------------------------;
  2. ;      MODULE NAME:   EMM29_A.ASM                                             ;
  3. ;                                                                             ;
  4. ;    FUNCTION NAME:   prep_EMM_warmboot                                       ;
  5. ;                                                                             ;
  6. ;      DESCRIPTION:   This function prepares the expanded memory hardware for ;
  7. ;                     an impending warm boot.  This function assumes that the ;
  8. ;                     next operation that the operating system performs is a  ;
  9. ;                     warm boot of the system.  In general, this function     ;
  10. ;                     will effect the current mapping context, the alternate  ;
  11. ;                     register set in use, and any other expanded memory      ;
  12. ;                     hardware dependencies which need to be initialized at   ;
  13. ;                     boot time.  If an application decides to map memory     ;
  14. ;                     below 640K, the application must trap all possible      ;
  15. ;                     conditions leading to a warm boot and invoke this       ;
  16. ;                     function before performing the warm boot itself.        ;
  17. ;                                                                             ;
  18. ;           PASSED:   Nothing.                                                ;
  19. ;                                                                             ;
  20. ;         RETURNED:   status:                                                 ;
  21. ;                        is the status EMM returns from the call.  All other  ;
  22. ;                        returned results are valid only if the status        ;
  23. ;                        returned is zero.  Otherwise they are undefined.     ;
  24. ;                                                                             ;
  25. ; C USE CONVENTION:   unsigned int status;                                    ;
  26. ;                                                                             ;
  27. ;                     status = prep_EMM_warmboot();                           ;
  28. ;-----------------------------------------------------------------------------;
  29. .XLIST
  30. PAGE    60,132
  31.  
  32. IFDEF SMALL
  33.    .MODEL SMALL, C
  34. ENDIF
  35. IFDEF MEDIUM
  36.    .MODEL MEDIUM, C
  37. ENDIF
  38. IFDEF LARGE
  39.    .MODEL LARGE, C
  40. ENDIF
  41. IFDEF COMPACT
  42.    .MODEL COMPACT, C
  43. ENDIF
  44. IFDEF HUGE
  45.    .MODEL HUGE, C
  46. ENDIF
  47.  
  48. INCLUDE emmlib.equ
  49. INCLUDE emmlib.str
  50. INCLUDE emmlib.mac
  51. .LIST
  52. .CODE
  53.  
  54. prep_EMM_warmboot    PROC
  55.  
  56.     ;---------------------------------------------------------------------;
  57.     ;   do;                                                               ;
  58.     ;   .   prepare the EMM hardware for an impending warm boot by the OS ;
  59.     ;   .   (reset it to its initial state at power on);                  ;
  60.     ;---------------------------------------------------------------------;
  61.     MOVE        AH, prepare_for_warmboot_fcn
  62.     INT         EMM_int
  63.  
  64.     ;---------------------------------------------------------------------;
  65.     ;   .   return (EMM status);                                          ;
  66.     ;   end;                                                              ;
  67.     ;---------------------------------------------------------------------;
  68.     RET_EMM_STAT    AH
  69.  
  70. prep_EMM_warmboot        ENDP
  71.  
  72. END
  73.